Назад в библиотеку

Обзор ядер геометрического моделирования WWW.CAD.DP.UA

Автор: Don LaCourse
Источник: www.cad.dp.ua, http://www.cadalyst.com

Ядро геометрического моделирования является сердцем каждого коммерчески доступной системы 3D-моделирования. Понимание того, как работает ядро и различий между их типами поможет вам определить, какая система CAD-моделирования лучшая для вас.

Основные понятия о ядре

Ядро - это библиотека основных математических функций CAD-системы, которая определет и хранит 3D-формы ожидая команды пользователя.

Ядро обрабатывает команды, сохраняет результаты и осуществляет вывод на дисплей. На Рис. 1 показано это взаимодействие, на примере ядра thinkdesign (think3 Inc.) Архитектура, показанная здесь оптимизирована чтобы гарантировать максимальную интеграцию между CAD-приложением и низкоуровневыми компонентами ядра, обеспечивая большую гибкость приложения, устойчивость к ошибкам и быстродействие.

Архитектура ядра thinkdesign
Рис. 1. Архитектура ядра thinkdesign

В настоящий момент существуют три типа ядер геометрического моделирования: лицензируемые, частные и доступные в исходном коде. Рассмотрим по два ядра каждого типа.

Лицензируемые ядра

Лицензируемые ядра геометрического моделирования разработаны и поддерживаются одной компанией, которая лицензирует их другим компаниям для их CAD-систем. К примеру, ядро Parasolid, разработано UGS (бывшая Unigraphics Solutions). Оно используется в Unigraphics и Solid Edge и лицензировано другим компаниям, включая CADMAX Corp. (True Solid/Master) и SolidWorks Corp. (SolidWorks). Лицензированные ядра могут обеспечивать более прямую совместимость (через форматы обмена, такие как SAT и X_T) между CAD-системами, которые их лицензировали.

ACIS 3D Geometric Modeler (Spatial/Dassault Systemes)

В Ноябре 2000 года разработчика ядра Dassault Systemes купила Spatial Corporation, чем был дан новый толчек для улучшения этого ядра. Подразделение Spatial PlanetCAD образовало собственную компанию, под названием PlanetCAD Inc.

ACIS это объектно-ориентированная C++ геометрическая библиотека которая состоит из более чем 35 DLL-файлов и включает каркасные структуры, поверхности и твердотельное моделирование. Оно дает разработчикам программ богатый выбор геометрических операций для конструирования и манипулирования сложными моделями а так же полный набор булевых операций. Его математический интерфейс Laws Symbolic и основанная на NURBS деформация позволяют интегрировать поверхностное и твердотельное моделирование. Ядро ACIS осуществляет вывод в формат файлов SAT, который любая поддерживающая ACIS программа может читать напрямую.

Новое ядро ACIS 6.3 было выпущено в первом квартале 2001. Компания сообщает что качество и надежность - основные черты этой самой последней версии. ACIS 6.3 - всесторонне качественная программа, которая включает строгие тестовые критерии и ситуации. Как результат, в ACIS 6.3 для Windows NT неизвестно ни одной ошибки при работе с памятью.

Также новым является изобилие компонентов, которые позволяют ACIS 6.3 дать разработчикам программного обеспечения больше возможностей при создании приложений. ACIS теперь содержит более чем 50 компонент, включая смешивание, локальные операции, точные скрытые линии, пространственное изменение масштаба, продвинутые средства работы с поверхностями, ячеистую топологию и VISMAN (Visualization Manager).

 Фильтр, выполненый в использующем ACIS Autodesk Mechanical Desktop
Рис. 2. Фильтр, выполненый в использующем ACIS Autodesk Mechanical Desktop

И наконец, Spatial начала новую программу по продвижению ядра на рынке, основная идея которой заключается в том, что разработчики не платят за лиценизирования до момента выпуска ими готового программного продукта на этом ядре.

Parasolid (UGS)

Parasolid - это самое быстрое ядро, доступное для лицензирования, разработано UGS. Parasolid обеспечивает технологию для твердотельного моделирования, обобщенного ячеистого моделирования, интегрированные поверхности свободной формы и листовое моделирование. Parasolid позволяет разработчикам быстро создавать конкурентоспособные продукты используя эти технологии. На этом ядре разработано много CAD/ CAM/CAE систем высокого и среднего уровня - к примеру SolidWorks, Delmia, Pro/DESKTOP, и FEMAP.

Parasolid поддерживает SMP (многопроцессорное аппаратное обеспечение), что позволяет увеличить производительность. Parasolid включает более чем 600 объектно-ориентированных функций для приложений под управлением Windows NT, UNIX, и LINUX.

Parasolid достиг 500,000 конечных пользователей во втором квартале 2000 года, а в настоящий момент число пользователей перевалило за 700,000, и это ядро используется более чем в 230 программных продуктах. Parasolid используют в своих программных продуктах Bentley Systems, Visionary Design Systems, CADKEY, ANSYS, Mechanical Dynamics, и MSC.Software.

В дополнении к формату обмена XT, Parasolid позволяет трансляцию и восстановление данных из других систем моделирования с помощью уникальной технологии Tolerant Modeling. В третьем квартале 2000 года был выпущен основанный на XML формат eXT для расширения возможностей обмена данными.

Отвертки, выполненые на ядре Parasolid в Unigraphics
Рис. 3. Отвертки, выполненые на ядре Parasolid в Unigraphics

Последние версии Parasolid сфокусированы на расширении экстермального моделирования в наиболее технически сложных областях. Они были пионерами прямого моделирования, которое позволяет пользователям интуитивно модифицировать непараметризованые модели, как будто бы они имеют параметры.

Частные ядра

Частные ядра геометрического моделирования разрабатываются и поддерживаются разработчиками CAD-систем для использования исключительно в своих приложениях. Преимуществом частных ядер является более глубокая интеграция с интерфейсом CAD-приложения. Как результат этого - большие возможности управления системой пользователем - к примеру неограниченные undo и redo. Два представленных ниже ядра объединяют пространственное и твердотельное моделирование в одном приложении.

Thinkdesign kernel (think3 Inc.)

Основой CAD-системы think3 является ядро thinkdesign. Его уникальная архитектура дает разработчикам параметризированные твердые тела, расширенные средства по моделированию поверхностей, каркасные структуры, и 2D-черчение в одной CAD-системе (Рис. 4). Топология ядра thinkdesign делает возможным смешивать поверхности и твердые тела, импортировать и использовать несовершенную 3D-геометрию, полностью интегрировать 2D-чертежи в трехмерные базы данных и обеспечивает диогностическую информацию на событие, когда операция твердотельного моделирования не может быть завершена. Ядро также может назначать переменные допуски к различным геометрическим примитивам.

Ядро thinkdesign
Рис. 4. Ядро thinkdesign поддерживает внутри сборки все геометрические типы данных.

VX Overdrive (Varimetrix Corp.)

Высоко-производительное эксклюзивное ядро, которое обладает сложными возможностями трехмерного гибридного моделирования и предоставляет высоко-технологичные средства на рабочем столе. VX Overdrive предлагает реальную гибридную систему, которая объединяет твердотельное и расширеное свободно-форменное поверхностное моделирование.

VX Overdrive поддерживает такие функции как одновременная разработка, храненит информацию о версиях объекта, гибкий хронологический контроль, сложные средства заполнения и смешивания, неограниченное undo/redo, и настоящее моделирование сборки "в контексте".

CAM - родная среда для VX Overdrive — не дополнение, позднейшая доработка или разработка другой компании. Планирование производства и подпрограммы для станков с ЧПУ - интегрированая часть ядра, которая гарантирует полную синхронизацию между проектированием и производством. Изменения в спроектированной геометрии напрямую отражаются изменениями в автоматических производственных операциях.

Пример разработки на VX Overdrive
Рис. 5. Пример разработки на VX Overdrive

VX Overdrive имеет открытую, масштабированную архитектуру разработанную чтобы удовлетворять возрастающие требования рынка. Его API позволяет сторонним разработчикам создавать свои свои специализированные дополнения.

Ядра, доступные в исходном коде

Ядра, доступные в исходном коде подобны лицензированным ядрам.Они также разрабатываются и поддерживаются одной компанией и затем лицензируются другим компаниям для использования в CAD-приложениях.

Отличие стоит в том, что эти разработчики обеспечиваю исходный код ядра. Для пользователей которые имеют группы разработки и хотят сами настраивать ядро системы очень удобно иметь возможности настройки, посколько исходный код доступен.

Open CASCADE (Matra Datavision)

Open CASCADE v3.1 (выпущен в Ноябре 2000 года) представляет Visual C++ проекты, которые позволяют пользователям компилировать код Open CASCADE на их платформах. В дополнении, форматы экспорта данных теперь доступны для STL, VRML и HPGL2, и представлен Open CASCADE Application Framework для быстрой разработки приложений 3D моделирования.

Open CASCADE доступен для загрузки. Недавно созданная компания Open CASCADE (субсидируемая EADS Matra Datavision) обеспечивает специфицированную разработку приложений для индустриальных клиентов и разработчиков программного обеспечения. Это также коммерциализирует широкий ассортимент платеных добавочных услуг поверх сертефицированной версии Open CASCADE.

Эти услуги облегчают оптимальную реализацию пользовательских проектов и включает обучение в он-лайне, техническую помощь, и ежегодные пакеты поддержки которые адаптированы к различным требованиям пользователей. Пользователи так же могут заказать индивидуальные дополнения к проекту и консультации.

В течении прошлого года эта бизнес-модель оказалось очень успешной, что побудило EADS Matra Datavision создать новую компанию и запланировать ее расширение в декабре 2000 года.

Пример модели, разработанной с использованием Open CASCADE.
Рис. 6. Пример модели, разработанной с использованием Open CASCADE.

Кроме того, принцип распространения исходного кода позволил большему числу пользователей Open CASCADE участвовать в разработке этого продукта, предоставляя свой код, который также публикуется на http://www.opencascade.org/. Это дает большие возможность сообществу Open CASCADE по обогащению этого программного продукта.

SMLib (Solid Modeling Solutions).

SMLib от Solid Modeling Solutions - это набор основанных на NURBS геометрических и топологических библиотек, который существует на рынке семь лет и который используют более чем 200 компний и университетов. SMLib включает обширный набор NURBS-функций криволинейного и поверхнсотного моделирования а также оптимизированный код для быстрого измерения расстояния между объектами.

Ядро SMLib недавно предоставило новые возможности, включая основаную на топологие сеточную генерацию для двумерных сот, расширеное заполнение и затенение, смещение оболочки и возможности множественного объединения.

SMLib имеет уникальную бизнес-модель, по которой продукт распространяется в форме исходного кода без авторских отчислений. Это обеспечивает чрезвычайно притягательную возможность для поддержки и обновления без всякого смещения к приватизации программного обеспечения или форматов данных.

Типы ядер геометрического моделирования  

 
Ядро Разработчик Web-сайт Тип ядра
ACIS 3D Geometric Modeler Spatial/Dassault Systemes http://www.spatial.com/ Лицензируемое
Open CASCADE Matra Datavision http://www.opencascade.org/ Доступно в исходном коде
Parasolid UGS http://www.parasolid.com/ Лицензируемое
SMLib Solid Modeling Solutions http://www.smlib.com/ Доступно в исходном коде
thinkdesign kernel think3 Inc. http://www.think3.com/ Частное
VX Overdrive Varimetrix Corp. http://www.varimetrix.com/ Частное